#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <assert.h>
#include <string.h>


//模拟实现strncmp
//int my_strncmp(const char* string1, const char* string2, size_t n)
//{
//	assert(string1 && string2);
//	//指定次数n
//	while (n--)
//	{
//		if (*string1 == *string2)
//		{
//			if (string1 == '\0')
//			{
//				return 0;
//			}
//			else
//			{
//				string1++;
//				string2++;
//				continue;
//			}
//		}
//		else if (*string1 > *string2)
//		{
//			return 1;
//		}
//		else
//		{
//			return -1;
//		}
//	}
//	return 0;
//
//}
//int main()
//{
//	char arr1[] = "abcdefg";
//	char arr2[] = "abckghjk";
//	int ret = my_strncmp(arr1, arr2, 3);
//	printf("%d\n",ret);
//	return 0;
//}


//int main()
//{
//	char arr1[] = "abcdferqwer";
//	char arr2[] = "feu";
//	char* ret=strstr(arr1,arr2);
//	if (ret==NULL)
//	{
//		printf("找不到\n");
//	}
//	else
//	{
//		printf("%s\n",ret);
//	}
//	return 0;
//}

//拿第二个字符串的首字符，依次和第一个字符串的字符做对比，若相等
//拿第二个字符串的第二个字符去对比，
//                                                        若不等，
//拿第一个字符串的第二个字符去对比，循环；


//模拟实现strstr
//char* my_strstr(const char* string1,const char* string2)
//{
//	assert(string1&&string2);
//	if (*string2=='\0')
//	{
//		return (char*)string1;
//	}
//	//s1,s2 记录起点的位置，cp记录当前在s1中指针的位置
//	//初始化
//	char* s1 = NULL;
//	const char* s2 = NULL;
//	const char* cp = string1;
//	while (*cp!='\0')
//	{
//		s1 = cp;
//		s2 = string2;
//		while (*s1 == *s2)
//		{
//			s1++;
//			s2++;
//		}
//		if (*s2 == '\0')
//		{
//			return cp;
//		}
//		cp++;
//	}
//	return NULL;
//	
//}
//int main()
//{
//	char arr1[] = "abcdfg";
//	char arr2[] = "cdf";
//	char* ret=my_strstr(arr1,arr2);
//	if (ret!='\0')
//	{
//		printf("%s\n",ret);
//	}
//	else
//	{
//		printf("没找到\n");
//
//	}
//	return 0;
//}


//int main()
//{
//	//char arr[] = "abc@qq.com";
//	char arr[] = "192.168.120.87";
//	char sep[] = ".";
//	//记录好位置之后找标记
//	//char* ret=strtok(arr,sep);
//	//printf("%s\n",ret);
//	//ret = strtok(NULL, sep);
//	//printf("%s\n", ret);
//	//ret = strtok(arr, sep);
//	//printf("%s\n", ret);
//
//	char* ret = NULL;
//	for (ret=strtok(arr,sep);ret!='\0';ret=strtok(NULL,sep))
//	{
//		printf("%s\n",ret);
//	}
//
//
//	return 0;
//}


//字符串操作函数
//int main()
//{
//	printf("%s\n", strerror(0));
//	printf("%s\n", strerror(1));
//	printf("%s\n", strerror(2));
//	printf("%s\n", strerror(3));
//	printf("%s\n", strerror(5));
//	printf("%s\n",strerror(6));
//	return 0;
//}

#include <errno.h>
//int main()
//{
//	FILE* ret=fopen("test.txt","r");
//	if (ret=='\0')
//	{
//		//printf("%s\n",strerror(errno));
//		perror("错误信息是：");
//	}
//	fclose(ret);
//	return 0;
//}


//strerror:将错误码转换为错误信息
//perror：打印出错误信息，并且可以添加格式



